创建 Order 对象

通过创建 order 对象完成一笔订单的下单动作(确认一笔订单的付款信息),下单时用户可以使用优惠券对订单折扣,下单完成后该订单状态会变成 created 状态。当用户被禁用时,该请求会被拒绝。

请求参数描述
app required string订单应用,对应 app 对象的 id,查看 如何获取App ID
merchant_order_no required string商户订单号,适配每个渠道对此参数的要求,必须在商户的系统内唯一。长度限制 8~20 位,要求数字或字母,不允许特殊字符。
amount required int订单原始金额,单位为分。
currency required string3 位 ISO 货币代码,小写字母,人民币为 cny。使用跨境渠道参考 跨境渠道 currency 说明 ;使用 isv_lite 渠道只支持 cny,hkd 其中的一个值。
client_ip required string发起支付请求客户端的 IP 地址,支持 IPv4、IPv6 格式。
subject required string商品标题,该参数最长为 32 个 Unicode 字符。银联全渠道限制在 32 个字节;支付宝部分渠道不支持特殊字符;cmpay 渠道限制为 1~25 个 Unicode 字符;isv_lite 渠道限制为:1~20 个 unicode 长度,不允许以下特殊字符串"\n\r,,~!@#¥%……&*()【】「」"
body required string商品描述信息,该参数最长为 128 个 Unicode 字符。yeepay_wap 对于该参数长度限制为 100 个 Unicode 字符;支付宝部分渠道不支持特殊字符。
uid optional stringuser 对象的 id,默认值为 "0"。若后续需使用 balance 渠道进行支付,则此参数必传,且支付 extra 参数 user 无需传。若订单使用优惠券,则此处需传入接收优惠券的用户 id。
coupon conditional string使用的 coupon 对象的 id。此参数需要与 uid 同时传入。
actual_amount conditional int订单应付金额,单位为分。值为订单原始金额减去优惠券折扣金额(amount - coupon_amount)。传入该值则校验是否和 Ping++ 计算出的应付金额一致,不传则不校验。
time_expire optional timestamp订单过期时间,用 Unix 时间戳表示。时间范围在订单创建后的 1 分钟到 7 天,默认值为 1 天,创建时间以 Ping++ 服务器时间为准。如果订单到达过期时间仍未完成付款,则会自动变为 canceled 状态。
receipt_app optional string收款方 app 对象的 id,默认为订单应用。订单使用收款方应用的渠道参数进行支付。
service_app optional string服务方 app 对象的 id,默认为订单应用。表示承接该交易服务的应用,由服务方和平台确定订单的层级链都能查询到该 order 对象。
royalty_users optional list分润的用户信息列表,默认为[],不分润。详见下方的 royalty_users 字段说明
royalty_template optional string使用的 royalty_template 对象的 id。该参数与 royalty_users 同时传时将会被忽略。
balance_settlement optional hash余额结算信息。订单支付完成时,将扣除用户手续费后的支付金额结算到指定的用户余额账户。仅对开通了 balance 渠道的应用有效。详见下方的 balance_settlement 字段说明
description optional string附加说明,最多 255 个 Unicode 字符。
metadata optional hash详见 元数据
royalty_users 字段说明描述
user required string分润的 user 对象 id
amount required int分润的金额,单位为分。
balance_settlement 字段说明描述
user required string结算的 user 对象的 id
user_fee optional int结算时收取的用户手续费,由被结算用户承担,单位分,默认值为 0。

返回

返回一个 order 对象,或者返回一个错误,详见 错误

定义

POST https://api.pingxx.com/v1/orders
待补充
待补充
待补充
待补充
待补充
待补充
待补充

请求示例

curl https://api.pingxx.com/v1/orders \
-H "Pingplusplus-Signature: SIGNATURE" \
-H "Pingplusplus-Request-Timestamp: 1475029155" \
-H "Content-Type: application/json" \
-u sk_test_ibbTe5jLGCi5rzfH4OqPW9KC:
-d '{
 "app": "app_1Gqj58ynP0mHeX1q",
  "uid": "user_007",
  "merchant_order_no": "2017081400000006",
  "coupon": "300317081415225500002001",
  "amount": 1000,
  "client_ip": "127.0.0.1",
  "currency": "cny",
  "subject": "Your Subject",
  "body": "Your Body",
  "time_expire": 1502781019
}'
待补充
待补充
待补充
待补充
待补充
待补充
待补充

返回示例

{
    "id": "2001708140000017551",
    "object": "order",
    "created": 1502695388,
    "livemode": false,
    "paid": false,
    "refunded": false,
    "status": "created",
    "app": "app_1Gqj58ynP0mHeX1q",
    "uid": "user_007",
    "available_balance": 0,
    "merchant_order_no": "2017081400000006",
    "amount": 1000,
    "actual_amount": 800,
    "amount_refunded": 0,
    "amount_paid": 0,
    "coupon_amount": 200,
    "currency": "cny",
    "subject": "Your Subject",
    "body": "Your Body",
    "client_ip": "127.0.0.1",
    "time_paid": null,
    "time_expire": 1502781019,
    "coupon": "300317081415225500002001",
    "description": null,
    "metadata": {},
    "charge_essentials": {},
    "receipt_app": "app_1Gqj58ynP0mHeX1q",
    "service_app": "app_1Gqj58ynP0mHeX1q",
    "available_methods": [
        "balance"
    ],
    "charges": {
        "object": "list",
        "url": "/v1/charges",
        "has_more": false,
        "data": []
    }
}